Technologies for protecting programs written in object-oriented programming languages are known. For example, a technology of distributing an encrypted program of a program written in Java (registered trademark) and decrypting the program immediately before execution is disclosed. Furthermore, a technology of using different class loaders by a plurality of objects to dynamically execute and add programs is also disclosed.
In the related art, however, access from other objects cannot be limited depending on respective methods contained in an object.